iT邦幫忙

2022 iThome 鐵人賽

DAY 8
0
Modern Web

Node.js 從零開始系列 第 8

Node.js - exports 模組設計

  • 分享至 

  • xImage
  •  

node

上一篇有學到使用 module.exports 繪出想要的模組資料,

var data = {
  name: "tim",
  age: "28",
  job: "F2E",
};
module.exports = data;

直接使用 exports 匯出資料

但也會在一些開源專案中看到有人這樣寫,資料用上方範例:

exports.data = {
  name: "tim",
  age: "28",
  job: "F2E",
};

然後我透過 app.js 印出資料,

app

我得到一組物件資料裡面有一個屬性為 data 的物件,原來可以透過 export.data (data 可自訂義) 的方式直接匯出資料,並且是物件的格式,

既然是物件,當然我可以去取得物件裡面想要的屬性,

app

例如我想取兩筆資料,一個是 data 物件,一個是 data 中的名字。

app

exports 與 module.exports 無法共用

如題,不建議同時在檔案中使用 exports 跟 module.exports,因為 module.exports 的內容會把前面 exports 的內容覆蓋掉,

來個範例:

data.js

exports.data = {
  name: "tim",
  age: "28",
  job: "F2E",
};

module.exports = {
  name:'tom',
  age:'25',
  job:'student'
};

如果這樣寫,透過 node 執行 app.js 的結果會如下圖所示:

app

個人習慣使用 module.exports 的方式匯出資料,但如果在其他協作專案看到 exports 的寫法,也可以知道是同樣的意思喔!

至於要用哪個寫法就看自己習慣與喜好。


上一篇
Node.js - require, module export 模組設計
下一篇
Node.js - createServer 起手式
系列文
Node.js 從零開始30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言